home *** CD-ROM | disk | FTP | other *** search
/ Gekikoh Dennoh Club 1 / Gekikoh Dennoh Club Vol. 1 (Japan).7z / Gekikoh Dennoh Club Vol. 1 (Japan) (Track 1).bin / kowin / dockob / mog.kob < prev    next >
Text File  |  1995-11-13  |  4KB  |  137 lines

  1. /********************************************
  2. /* もぐらったたき for こB!   by v914AKSTN *
  3. /********************************************
  4.  
  5.  
  6. /********************
  7. /* 起動時の初期設定 *
  8. /********************
  9. int i,x,y
  10. dim int mog(8)
  11. int mg=0
  12. int sc=0,out=0
  13. int mclick=0,mc0=50
  14.  
  15. ITIME=7
  16.  
  17.  
  18. /****************************************
  19. /* もぐらっの穴になるウィンドウを散らす *
  20. /****************************************
  21. for i=0 to 8
  22.     x=WINX+80*(i mod 3)+int(rnd()*24)-10
  23.     y=WINY+80*(i\3)+int(rnd()*24)-10
  24.     WindowSimpleOpen( i, x, y, 64, 64, 0 )
  25. next
  26.  
  27.  
  28. /**************************
  29. /* 得点ウィンドウオープン *
  30. /**************************
  31. WindowTitleOpen( 9, WINX+80*3+20, WINY, 128, 64, 0, "もぐらったたき", 3 )
  32. end
  33. /******************
  34. /* 初期設定終わり *
  35. /******************
  36.  
  37.  
  38.  
  39. /******************************************
  40. /* 再描画する必要が生じた時、呼び出される *
  41. /******************************************
  42. func Eredraw(wno)
  43.     if wno=9 then {        /* 得点などのステータスボード
  44.         DrawClear( wno, 1 )
  45.         DrawSymbol( wno, 10, 10, "得点:"+right$("      "+str$(sc),6), 9, 16 )
  46.         DrawSymbol( wno, 10, 30, "オテツキ:"+right$("      "+str$(out),6), 9, 16 )
  47.     } else {        /* もぐらっの穴
  48.         DrawClear( wno, 1 )
  49.     }
  50. endfunc
  51.  
  52.  
  53. /******************************************
  54. /* マウスでクリックされた時、呼び出される *
  55. /******************************************
  56. func Emouse( wno )
  57.     int i
  58.  
  59.     if info_Lon=0 then return(0)    /* 左クリックされてんじゃなかったら、何もしない
  60.     if out>=5 then {        /* ゲーム終わってる
  61.         if wno<9 then return(0)
  62.  
  63.         for i=0 to 8:DrawClear(i,1):mog(i)=0:next
  64.         mg=0:sc=0:out=0:mclick=0:mc0=50
  65.         WindowRedraw(9)            /* 得点ボード再描画
  66.         ITIME=7                /* ゲーム再スタート!!
  67.         return(1)
  68.     }
  69.     if wno=9  then return(0)    /* 得点ボードだ
  70.  
  71.  
  72.  
  73.     mclick=mclick+1
  74.     if mclick>=mc0 then {    /* 50回クリックごとに早くなる
  75.         mc0=mc0+50
  76.         ITIME=ITIME-1
  77.         if ITIME=0 then ITIME=1
  78.     }
  79.  
  80.     if mog(wno)>0 then {        /* もぐらっを叩いた!
  81.         sc=sc+mog(wno)        /* 点数加算
  82.         mog(wno)=-1        /* 次の interval で×を消す
  83.         DrawSymbol( wno, 8,8, "\/", 9, 24 )    /* 大きく×を描く
  84.         DrawSymbol( wno, 8,8+24, "/\", 9, 24 )
  85.         DrawSymbol( 9, 50, 10, right$("      "+str$(sc),6), 9, 16 )
  86.     } else if mog(wno)=0 then {        /* スカしたっっっ!
  87.         out=out+1    /* おてつき
  88.         mog(wno)=-1    /* 次の interval で 'スカ' を消す
  89.         DrawSymbol( wno, 8,8, "スカ", 9, 24 )
  90.         DrawSymbol( wno, 8,8+24, "ッ!", 9, 24 )
  91.         DrawSymbol( 9, 50, 30, right$("      "+str$(out),6), 9, 16 )
  92.     }
  93. endfunc
  94.  
  95.  
  96. /**********************************
  97. /* ITIME/100 秒ごとに呼び出される *
  98. /**********************************
  99. func Einterval( wno )
  100.     int    m
  101.  
  102.     if out>=5 then {    /* 終わってたら、「終」を出す
  103.         ITIME=-1    /* interval off = ゲーム終了
  104.         for m=0 to 8
  105.             DrawClear( m, 1 )
  106.             DrawSymbol( m, 20,20, "終", 9, 24 )
  107.         next
  108.         return(0)
  109.     }
  110.  
  111.     m=mog(mg)
  112.     if m then {        /* もぐらっが顔を出している?
  113.         m=m-1
  114.         if m=0 then {
  115.             out=out+1    /* ニゲタゾ。
  116.             m=-1        /* 次の interval で「ニゲタゾ」を消す
  117.             DrawSymbol( mg, 8,8, "ニゲ", 9, 24 )
  118.             DrawSymbol( mg, 8,8+24, "タゾ", 9, 24 )
  119.             DrawSymbol( 9, 50, 30, right$("      "+str$(out),6), 9, 16 )
  120.         } else if m<0 then DrawClear( mg, 1 ):m=0
  121.         mog(mg)=m
  122.     } else {
  123.         if rnd()<.22-20.0/(sc+100) then {    /* 新しくもぐらっが顔を出す?
  124.             mog(mg)=3    /* もぐらっ登録
  125.             DrawSymbol( mg, 8,8, "もぐ", 9, 24 )
  126.             DrawSymbol( mg, 8,8+24, "らっ", 9, 24 )
  127.         }
  128.     }
  129.  
  130.     mg=mg+1
  131.     if mg>=9 then mg=0
  132. endfunc
  133.  
  134. /*******************************
  135. /* プログラム終わり   H7/11/12 *
  136. /*******************************
  137.